Software development efforts within enterprises have grown tremendously over the past several years, resulting in creation of large volumes of software assets, such as software codes. An enterprise may have a significant number of ongoing software development projects at any one time, ranging in size from small projects involving a handful of programmers to massive endeavors involving hundreds of programmers, leading to creation of new software assets everytime.
In the past few years, there has been a tremendous amount of work in the area of reuse of software assets across various development projects. Reusing software assets may have significant advantages in, for example, reducing the resources, expense, and development time for a software project. To facilitate software reuse, software assets developed in various software development projects are collated and stored within repositories dispersed throughout the enterprise. Such repositories are periodically updated to maintain the software assets for facilitating reuse of the software assets across various software development projects.